/*
 * ItemDAO.java
 *
 * Created on July 6, 2007, 12:15 PM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.abbh.libcommunity.dao;

import com.abbh.libcommunity.model.Item;
import com.abbh.libcommunity.model.UserBoughtItems;
import java.util.Date;
import java.util.List;

/**
 *
 * @author Atef A. Ahmed
 */
public interface ItemDAO {
    
    public abstract void save(Item item);
    public abstract void update(Item item);
    public abstract void delete(Item item);
        
    public abstract void sellItem(Item ubItem);
    
    public abstract Item findByItemId(Integer itemId);
    public abstract  List findBycreatedUser(String  name) ;
    public abstract  List findByCreationDate(Date date) ;
    public abstract  List findByDescription(String desc) ;
    public abstract  Item findById(Integer id) ;
    public abstract  Item findByISBN(String isbn) ;
    public abstract  List findByItemCategory(String desc) ;
    public abstract  List findByItemType(String type) ;
    public abstract  List findByLastModifiedDate(Date date) ;
    public abstract  List findByLastModifiedUser(String username) ;
    public abstract  List findByPublisher(String desc) ;
    public abstract  List findByRating(String rating) ;
    public abstract  Item findByTitle(String title);
    public abstract  List findByYear(Integer year) ;
}
